using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Xml;
using System.Data;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;

namespace ShopPowerTemplate.Entities
{
    public partial interface IEntitiesDB : IDisposable
    {
        DbSet<Address> AddressSet { get; set; }
        DbSet<AppSettings> AppSettingsSet { get; set; }
        DbSet<Category> CategorySet { get; set; }
        DbSet<Customer> CustomerSet { get; set; }
        DbSet<Image> ImageSet { get; set; }
        DbSet<Option> OptionSet { get; set; }
        DbSet<OptionType> OptionTypeSet { get; set; }
        DbSet<Order> OrderSet { get; set; }
        DbSet<OrderDetail> OrderDetailSet { get; set; }
        DbSet<OrderState> OrderStateSet { get; set; }
        DbSet<Product> ProductSet { get; set; }
        DbSet<ProductDetail> ProductDetailSet { get; set; }
        DbSet<Review> ReviewSet { get; set; }
        DbSet<ShippingCost> ShippingCostSet { get; set; }
        DbSet<Subcategory> SubcategorySet { get; set; }
        DbSet<User> UserSet { get; set; }

        DbEntityEntry Entry(object entity);
        DbEntityEntry<TEntity> Entry<TEntity>(TEntity entity) where TEntity : class;
        T EntryWithState<T>(T entity, EntityState state) where T : class;

        int SaveChanges();
    }
}
